Some non-volatile memory storage systems may use an update block as initial destinations for data received from write commands. A non-volatile memory storage system may use two types of update blocks. One type is a sequential update block where data stored in such block are managed sequentially. The second type is a chaotic update block where data stored in such block are managed non-sequentially. Typically, the non-volatile memory storage system initially provides a sequential update block as destination for data received from write commands. Upon the first non-sequential write to the same logical group, the sequential update block is converted into a chaotic update block or is closed and a new update block is allocated.
In general, the conversion of a sequential update block to a chaotic update block can be time consuming because one or more blocks have to be copied from one place to another. Such conversion increases the access time of data and, as a result, should be minimized. On the other hand, to keep a sequential update block sequential, intervening valid data from an associated, partially obsolete original block may need to be copied to the sequential update block when there is a discontinuity in logical addresses. Such copying can also be time consuming if a large amount of valid data are copied. As a result, continuing efforts are being made to improve the allocation and conversion of update blocks.